package memorymonitor;

public class MemoryVO {
    private String nomeUnidade;
    private double freeSpace;
    private double totalSpace;
    
    public MemoryVO() {
        super();
    }

    public MemoryVO(String nomeUnidade, double freeSpace, double totalSpace) {
        this.nomeUnidade = nomeUnidade;
        this.freeSpace = freeSpace;
        this.totalSpace = totalSpace;
    }

    public String getNomeUnidade() {
        return nomeUnidade;
    }

    public void setNomeUnidade(String nomeUnidade) {
        this.nomeUnidade = nomeUnidade;
    } 
    
    public double getFreeSpace() {
        return freeSpace;
    }

    public void setFreeSpace(double freeSpace) {
        this.freeSpace = freeSpace;
    }

    public double getTotalSpace() {
        return totalSpace;
    }

    public void setTotalSpace(double totalSpace) {
        this.totalSpace = totalSpace;
    }
 
    @Override
    public boolean equals(Object obj) {
        if(obj.getClass() == this.getClass()) {
            MemoryVO memory = (MemoryVO) obj;
            if(memory.getNomeUnidade().equals(memory.getNomeUnidade()) && memory.getFreeSpace() == this.getFreeSpace() && memory.getTotalSpace() == this.getTotalSpace())
                return true;
        }
        return false;
    }

    @Override
    public int hashCode() {
        int hash = 5;
        hash = 31 * hash + (int) (Double.doubleToLongBits(this.freeSpace) ^ (Double.doubleToLongBits(this.freeSpace) >>> 32));
        hash = 31 * hash + (int) (Double.doubleToLongBits(this.totalSpace) ^ (Double.doubleToLongBits(this.totalSpace) >>> 32));
        return hash;
    }
}